Query by Example
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
top
Query by Example (abrΓ©gΓ© QBE, en franΓ§ais interrogation par l'exemple), est un type d'interface utilisateur servant Γ effectuer des recherches dans des bases de donnΓ©es relationnelles. Le principe d'une interface QBE est que l'utilisateur prΓ©sente un exemple du rΓ©sultat de recherche attendu - sous forme d'une matrice, puis le soumet au SGBD. Celui-ci recherchera alors toutes les donnΓ©es qui correspondent Γ cet exemple. Les tables de la base de donnΓ©es sont prΓ©sentΓ©es Γ l'Γ©cran, et l'utilisateur peut les manipuler en vue de crΓ©er l'exemplecite-ref-1[1]cite-ref-2[2].
Contents
β’ ParticularitΓ©s
β’ Exemple
β’ RequΓͺte QBE
β’ RequΓͺte SQL
β’ DisponibilitΓ©
β’ Voir aussi
β’ Liens externes
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
ParticularitΓ©s
Avec ce systΓ¨me le rΓ©sultat prime sur les moyens de mise en Εuvre. Avec QBE, il ne s'agit pas, pour l'utilisateur, ni le dΓ©veloppeur, d'apprendre un langage de requΓͺtes, mais tout simplement de dΓ©finir une image de la rΓ©ponse que l'on veut obtenir, pour voir figurer les donnΓ©es rΓ©pondant Γ l'interrogation demandΓ©e.
QBE est dΓ¨s l'origine un langage relationnel complet intΓ©grant la division relationnelle, opΓ©ration dΓ©crite dans l'algΓ¨bre relationnelle de Codd qui n'est toujours pas prΓ©sente de maniΓ¨re simple dans les plus rΓ©centes normes SQL (SQL:2003). En revanche QBE ne permet pas la rΓ©cursivitΓ© dans les requΓͺtes, alors que la version normative SQL:1999 le permet.
Exemple
Voici un exemple de requΓͺte QBE et son Γ©quivalent SQL :
RequΓͺte QBE
== T_CLIENT_CLI ===== CLI_NUM ============= CLI_NOM ===
| Check _join1! | Check |
| | |
== T_COMMANDE_CDE ===== CLI_NUM =========== CDE_DATE ================= CDE_MONTANT ===
| _join1 | β₯ 2000-01-01, β€2000-03-31 | SOMME < 10000 |
| | | |
RequΓͺte SQL
SELECT CDE.CLI_NUM, CLI_NOM
FROM T_CLIENT_CLI CLI
LEFT OUTER JOIN T_COMMANDE_CDE CDE
ON CLI.CLI_NUM = CDE.CLI_NUM
WHERE CDE_DATE BETWEEN DATE'2000-01-01' AND '2000-03-31'
GROUP BY CDE.CLI_NUM, CLI_NOM
HAVING SUM(CDE_MONTANT) < 10000
DisponibilitΓ©
Les systèmes de gestion de base de données suivant mettent à disposition une interface QBE :
β’ Ashton-Tate dBase
β’ Microsoft Access
β’ FileMaker
β’ Kexi
β’ LibreOffice Base
Notes et rΓ©fΓ©rences
cite-note-22. β vassiliouvassiliou1984yannis-vassiliouyannis-vassiliou1984(en) Yannis Vassiliou et Yannis Vassiliou, Human factors and interactive computer systems proceedings of the NYU Symposium on User Interfaces, Norwood, Ablex Publishing Corporation, coll. Β« Human/computer interaction Β», 1984, 287 p. (ISBN 978-0-893-91182-9, OCLC 492861019)
Voir aussi
Liens externes
β’ Les requΓͺtes QBE en long en large et en travers
β’ Syntaxe de QBE et des opΓ©rateurs relationnels
β’ Portail de la programmation informatique
β’ Portail des bases de donnΓ©es